package io;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
/**
 * 文件复制(块读写)
 */
public class CopyDemo2 {
    public static void main(String[] args) throws IOException {
        FileInputStream fis = new FileInputStream("001.png");
        FileOutputStream fos = new FileOutputStream("00001.png");
        long start = System.currentTimeMillis();
        byte[] data = new byte[1024*10];   //10k
        int len;
        while ((len=fis.read(data))!=-1) {  //len表示的是真实读出来的字节数
            //fos.write(data);    //写入整个data，最后一次写入时可能会有脏数据
            fos.write(data,0,len);  //从data的0开始写入len个字节，度多少写多少，避免脏数据
        }
        long end = System.currentTimeMillis();
        System.out.println("复制完毕，耗时"+(end - start)+"毫秒");
        fis.close();
        fos.close();
    }
}
